"""
读写模块
========

该模块提供统一的读写接口，支持多种数据类型和通信协议。
"""

# 版本信息
__version__ = "1.0.0"

# 导出主要接口
from .read_interface import ReadInterface
from .write_interface import WriteInterface

# # 导出主要实现,避免循环导入，跟communication模块交互
# from .read_interface_wrap import ReadInterfaceWrapper
# from .write_interface_wrap import WriteInterfaceWrapper

# 导出类型定义
from .typedef import (
    DataType,
    WriteOption,
    ReadOption,
    PreProcessorType,
    PostProcessorType,
    PreReaderType,
    PostReaderType
)

# 导出数据类型工具
from .data_type_utils import normalize_data_type

# 导出配置管理器
from .config_manager import ConfigManager

# 导出参数解析器
from .param_parser import ParamParser

# 导出地址解析器
from .address_resolver import AddressResolver

# 导出数据验证器
from .data_validator import DataValidator

# 导出执行器
# from .write_executor import WriteExecutor

# 导出结果处理器
# from .result_processor import ResultProcessor

# 导出回调管理器
from .callback_manager import CallbackManager

__all__ = [
    # 主要接口
    'ReadInterface',
    'WriteInterface',

    # 类型定义
    'DataType',
    'WriteOption',
    'ReadOption',
    'PreProcessorType',
    'PostProcessorType',
    'PreReaderType',
    'PostReaderType',

    # 数据类型工具
    'normalize_data_type',

    # 配置管理器
    'ConfigManager',

    # 参数解析器
    'ParamParser',

    # 地址解析器
    'AddressResolver',

    # 数据验证器
    'DataValidator',

    # 执行器
    'WriteExecutor',

    # 结果处理器
    'ResultProcessor',

    # 回调管理器
    'CallbackManager',
]